Projectors are widely-used display devices that can be used to reproduce visual content such as an image, text and the like on many surface types. Multiple projectors are commonly used to increase the size of a projection on a projection surface whilst retaining high resolution and brightness. For example, four projectors can be arranged in a grid configuration to reproduce a single image that is four times larger than the image reproduced by a single projector.
A problem of such multi-projector systems is geometric alignment of the projected images on the projection surface. It is important that a viewer perceives a single image that has no visible seams or brightness fluctuations. Precise alignment of the projected images is therefore important. Many current multi-projection systems require a significant amount of manual effort to perform alignment. Some existing multi-projection systems perform an automatic alignment procedure at system installation time, for example using projected calibration patterns or structured light patterns. A calibration pattern is a projected pattern of intensity values that, perhaps in combination with other calibration patterns, encodes positions within the projected image. However, multi-projector systems may fall out of alignment over time, for example, due to physical movement of a projector or surface, building vibration, or heat fluctuations causing small movement of a projector's internal components. When such systems become misaligned, the manual or automatic alignment procedure typically needs to be re-run.
A calibration pattern or structured light pattern typically “encodes” positions in the projector image panel. At a position in a captured image, the structured light pattern can be “decoded”, to identify the corresponding encoded position in the projected image. The decoding process is typically repeated at several positions in the captured image, thereby forming several correspondences between points in the camera image and points in the projector image. The correspondences can then be triangulated, to locate 3D points on the projection surface. Triangulation is a method well-known in the art. Once a representation of the surface is known, the projected images can be aligned.
Many forms of projected calibration patterns or structured light patterns are known. Structured light patterns can be placed in one of two broad categories: temporal patterns and spatial patterns. Spatial calibration patterns typically encode projector position in a spatial region of the projected image. Typically, only a small number of projected images is required, making spatial patterns applicable to dynamic scenes (e.g. when a projection surface is moving). Several spatial calibration patterns consist of a grid of lines or squares. To decode the spatial calibration patterns, the encoding elements (e.g. lines, squares, edges) must typically be extracted from the captured image, and be used to re-construct the projected grid. The methods have a disadvantage of allowing correspondences to be formed at discrete locations only, corresponding to the positions of the projected lines or squares, which limits the number and spatial resolution of correspondences.
Other spatial calibration patterns consist of pseudo-random dot patterns. Pseudo-random dot patterns typically guarantee that a spatial window within the projected pattern is unique. Typically, a spatial region of the captured image is extracted, and is correlated with the projected calibration pattern. The position that has the highest correlation is identified as being the projector position that corresponds with the captured image position. Other pseudo-random dot patterns are created by tiling two or more tiles with different sizes throughout the projected image. Each tile contains a fixed set of pseudo-random dots. A position with a captured image is decoded by correlating a region of the captured image with each of the tiles. Based on the positions of the highest correlations, the absolute position in the projected image can be determined.
Spatial calibration patterns consisting pseudo-random dot patterns have advantages of (1) allowing a dense and continuous set of correspondences to be formed, (2) using simple and fast correlation techniques (e.g. based on the Discrete Fourier Transform), and (3) consisting of a sparse set of pseudo-random dots that can be easily and imperceptibly embedded within a projected image. However, correlation techniques typically require the captured calibration pattern to have a minimal amount of warping, in comparison with the projected calibration pattern. Some existing methods ensure that the captured image is not significantly warped, by placing the camera at a known, fixed and small distance from the projector. Methods requiring placement of the camera at a known fixed distance from the projector cannot easily be used in a multi-projector environment, where the projectors (and therefore the cameras) can be moved to a variety of disparate locations. Other existing methods project line patterns in addition to the pseudo-random dot pattern. The line patterns are used to determine the un-warping required to decode the pseudo-random dot pattern. However, the addition of a line pattern increases the visibility of the calibration pattern, which is undesirable in a projection environment.
There is a need in the art to address one or more of the disadvantages of the methods described above.